﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WEBWeixinSDK.WXMod
{
   public  class WXSync
    {
        public class BaseResponse
        {
            /// <summary>
            /// 
            /// </summary>
            public int Ret { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public string ErrMsg { get; set; }
        }

        public class UserName
        {
            /// <summary>
            /// 
            /// </summary>
            public string Buff { get; set; }
        }

        public class NickName
        {
            /// <summary>
            /// 
            /// </summary>
            public string Buff { get; set; }
        }

        public class BindEmail
        {
            /// <summary>
            /// 
            /// </summary>
            public string Buff { get; set; }
        }

        public class BindMobile
        {
            /// <summary>
            /// 
            /// </summary>
            public string Buff { get; set; }
        }

        public class Profile
        {
            /// <summary>
            /// 
            /// </summary>
            public int BitFlag { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public UserName UserName { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public NickName NickName { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public int BindUin { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public BindEmail BindEmail { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public BindMobile BindMobile { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public int Status { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public int Sex { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public int PersonalCard { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public string Alias { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public int HeadImgUpdateFlag { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public string HeadImgUrl { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public string Signature { get; set; }
        }

        public class ListItem
        {
            /// <summary>
            /// 
            /// </summary>
            public int Key { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public int Val { get; set; }
        }

        public class SyncKey
        {
            /// <summary>
            /// 
            /// </summary>
            public int Count { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public List<ListItem> List { get; set; }
        }

        public class ListItem2
        {
            /// <summary>
            /// 
            /// </summary>
            public int Key { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public int Val { get; set; }
        }

        public class SyncCheckKey
        {
            /// <summary>
            /// 
            /// </summary>
            public int Count { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public List<ListItem2> List { get; set; }
        }

        public class Root
        {
            /// <summary>
            /// 
            /// </summary>
            public BaseResponse BaseResponse { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public int AddMsgCount { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public List<string> AddMsgList { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public int ModContactCount { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public List<string> ModContactList { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public int DelContactCount { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public List<string> DelContactList { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public int ModChatRoomMemberCount { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public List<string> ModChatRoomMemberList { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public Profile Profile { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public int ContinueFlag { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public SyncKey SyncKey { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public string SKey { get; set; }
            /// <summary>
            /// 
            /// </summary>
            public SyncCheckKey SyncCheckKey { get; set; }
        }
    }
}
